const express = require('express')
    // const router = require('./router/router')
    // 用户相关的模块
    // const router1 = require('./router/index')
const path = require('path')
const body_parser = require('body-parser')
const fs = require('fs')
    // 导入session中间件
const session = require('express-session')
const app = express()
    // 设置默认采用的模板引擎
app.set('view engine', 'ejs')
    // 设置模板引擎的存放目录
app.set('views', __dirname + '/views')
    // 把node_moudules文件夹，托管为静态资源目录
app.use('/node_modules', express.static(path.join(__dirname, './node_modules')))
    // 注册解析表单数据的中间件
app.use(body_parser.urlencoded({ extended: false }))
    // 注册session中间件
    // 只要注册了session中间件，那么今后只要能访问到req这个对象，必然能访问到req.session
app.use(session({
        secret: '这是秘钥', // 相当于一个加密秘钥，值可以是任意字符串
        resave: false, //强制session保存到，session store中去
        saveUninitialized: false // 强制没有初始化的session保存到storage中
    }))
    // 使用循环进行路由的动态录入
fs.readdir(path.join(__dirname, './router'), (err, filename) => {
        if (err) console.log(err)
            // 循环router目录下的每一个文件名
        if (filename) {
            filename.forEach(fname => {
                // 每循环一次，拼接出一个完整的路由模块地址
                const router = require(path.join(__dirname, './router', fname))
                app.use(router)
            })
        }
    })
    // app.use(router)
    // app.use(router1)
app.listen(3000, () => {
    console.log('http://127.0.0.1:3000')
})